﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using LCA.Community.DAL.Model;

namespace LCA.Community.DAL.Interfaces
{
    /// <summary>
    /// The interface for groups membership repository
    /// </summary>
    public interface IGroupMembershipsRepository : IBaseRepository<GroupMembership>
    {
        void Add(string groupID, string userID);
        void Delete(string groupID, string userID);
        GroupMembership Get(string groupID, string userID);
        List<GroupMembership> GetGroupMembershipByGroup(string groupID);
        List<GroupMembership> GetGroupMembershipByUser(string userID);
        void DeleteAllUserMemberships(string userID);
        void DeleteAllGroupMemberships(string groupID);
    }
}
